"""
2.编写一个装饰器 exception_handler_decorator，它可以捕获函数执行过程中的异常并打印错误信息。
比如以下代码执行的时候会raise错误的，要求使用上装饰器之后不再抛错，但需要打印错误的信息
def divide(a, b):
    return a / b
print(divide(10, 0))
"""


def exception_handler_decorator(func):
    def inner(*args):
        try:
            res = func(*args)
            return res
        except ZeroDivisionError as e:
            print("除零发生错误:", e)
    return inner


@exception_handler_decorator
def divide(a, b):
    return a / b


if __name__ == '__main__':
    print(divide(10, 0))